Use Gitpod

Gitpod is an open-source platform for automated and ready-to-code development environments. GitPod is probably the easiest way to get ready to use development environment with the most tools that are required for Argo CD development.

How To Use It

  1. Fork https://github.com/argoproj/argo-cd repository
  2. Create Gitpod workspace by opening the following url in the browser: https://gitpod.io/#https://github.com/<USERNAME>/argo-cd where <USERNAME> is your Github username.

  3. Once workspace is created you should see VSCode editor in the browser as well as workspace initialization logs in the VSCode terminal. The initialization process downloads all backend and UI dependencies as well as starts K8S control plane powered by Kubebuilder envtest. Please wait until you see Kubeconfig is available at /tmp/kubeconfig message:

image

  1. You are ready to go!

Once your workspace is ready you can use VS Code to make code changes. Run goreman start to start Argo CD components and test your changes. Use the Gitpod user interface or CLI to access Argo CD API/UI from your laptop.

Why/When To Use It?

Gitpod is a perfect tool in following cases:

  • you are a first-time contributor and eager to start coding;
  • you are traveling and don’t want to setup development tools on your laptop;
  • you want to review pull request and need to quickly run code from the PR without changing your local setup;

Limitations

There are some known limitations:

  • You can only use VS Code
  • Free plan provides 50 hours per month
  • Envtest based Kubernetes is only control plane. So you won’t be able to deploy Argo CD applications that runs actual pods.
  • Codegen tools are not available. E.g. you won’t be able to use make codegen-local.